Utility monitoring and utility usage determination, control and optimization

ABSTRACT

Methods, systems, and apparatus, including computer programs encoded on computer storage media for utility monitoring and utility usage determination, control and optimization. The system receives utility usage information from one or more sensor devices, and obtains water usage information from a first sensor device coupled to a water pipe, obtains electricity usage information from a second sensor device coupled to an electrical panel, and/or obtains water heater usage information from a third sensor device coupled to a water heater. The system may use the obtained utility information to determine types of utility activities and/or appliances being used corresponding to the utility usage.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application relates to and claims the benefit of U.S. ProvisionalPatent Application No. 63/085,918, filed Sep. 30, 2020, and is herebyincorporated by reference its entirety.

BACKGROUND

Households consume utilities in the form of water, gas and electricity.Monitoring a household's utility consumption is often done at a generallevel or total consumption level. For example, utility meters are oftenplaced at input locations where they only measure the total amount ofthe utility being consumed by a household. However, these utility metersare unable to determine the utility usage for various appliances,devices or water outlets of the household. Without this information, oneis not able to effectively optimize household utility consumption, orsuggest cost saving utility consumption measures. Accordingly, a novelutility monitoring and usage determination, control and optimizationsystem and method are needed.

SUMMARY

Described herein is an innovative system and methods directed towardutility monitoring and utility usage determination, control andoptimization. The system receives utility usage information from one ormore sensor devices, where the system obtains water usage informationfrom a first sensor device coupled to a water pipe, obtains electricityusage information from a second sensor device coupled to an electricalpanel, and/or obtains water heater usage information from a third sensordevice coupled to a water heater. The system may use the obtainedutility information to determine types of utility activities and/orappliances being used corresponding to the utility usage, controlvarious appliances and household devices, and/or provide optimizationinformation and suggestions to a user. Additionally, multiple sensordevices of different types may be installed in larger buildings.

In one embodiment, the system receives water usage information from afirst sensor device where the first sensor device is configured toreceive water flow rate information from ultrasonic sensors coupled to awater pipe. The system receives electricity usage information from asecond sensor device, where the second sensor device is configured toreceive amperage information from clamp meters attached to the lines ofan electrical panel, and is configured to receive voltage informationand high-resolution wave-form data from a connection to a circuitbreaker of the electrical panel. The system receives water heater usageinformation from a third sensor device, where the third sensor device isconfigured to receive temperature and other information from temperaturesensors positioned about a water heater or from the gas controller ofthe gas heater. The system may obtain information from one or more of afirst sensor device, a second sensor device or a third sensor device.

In one embodiment, the system trains one or more machine learningutility usage models to learn patterns of utility usage. The systemreceives sensor measurement data from a plurality of utility usagesensors and feeds the sensor measurement data to one or more dynamicmachine learning utility usage models. The system then determines usingone or more of the machine learning utility usage models whether thereceived sensor measurement data indicates a utility usage activity typeand/or a particular appliance or device being used and or tailoredoptimization suggestions for a user.

In one aspect, the present disclosure pertains to the measurement andoptimization of water heating with tanked water heaters. Informationabout water heater usage is obtained using a sensor deviceinterconnected with a household water heater.

In another aspect, the present disclosure pertains to the measurementand optimization of electricity usage. Information about electricityusage is obtained using a sensor device interconnected with a householdelectricity panel.

In another aspect, the present disclosure pertains to the measurementand optimization of water usage. Information about water usage isobtained using a sensor device interconnected with a water piping.

Further areas of applicability of the present disclosure will becomeapparent from the detailed description, the claims and the drawings. Thedetailed description and specific examples are intended for illustrationonly and are not intended to limit the scope of the disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become better understood from the detaileddescription and the drawings, wherein:

FIG. 1 illustrates a diagram of an example system utilized in utilitymonitoring and utility usage determination, control and optimization.

FIG. 2 illustrates a diagram of an example household configured with theutility monitoring and utility usage determination, control andoptimization system.

FIG. 3A illustrates installation of a water sensor device used with theutility monitoring and utility usage determination, control andoptimization system.

FIG. 3B illustrates installation of an electricity sensor device usedwith the utility monitoring and utility usage determination, control andoptimization system.

FIG. 3C illustrates installation of a water heater sensor device usedwith the utility monitoring and utility usage determination, control andoptimization system.

FIG. 3D illustrates installation of a water heater sensor device usedwith the utility monitoring and usage determination, control andoptimization system.

FIG. 3E illustrates installation of a water heater sensor device usedwith the utility monitoring and usage determination, control andoptimization system.

FIG. 4A illustrates installation of a water heater sensor device usedwith the utility monitoring and usage determination, control andoptimization system.

FIG. 4B illustrates installation of a water heater sensor device usedwith the utility monitoring and usage determination, control andoptimization system.

FIG. 5 illustrates an example of an overview of a process for utilitymonitoring and utility usage determination.

FIG. 6A illustrates an example block diagram of a hub device used withthe utility monitoring and utility usage determination, control andoptimization system.

FIG. 6B illustrates an example block diagram of a water sensor deviceused with the utility monitoring and utility usage determination,control and optimization system.

FIG. 6C illustrates an example block diagram of an electricity sensordevice used with the utility monitoring and utility usage determination,control and optimization system.

FIG. 6D illustrates a block diagram example of a water heater sensordevice used with the utility monitoring and utility usage determination,control and optimization system.

FIG. 7A illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 7B illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 7C illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 7D illustrates an example user interface according to oneembodiment of the present disclosure.

FIG. 7E illustrates an example user interface according to oneembodiment of the present disclosure.

FIG. 8 illustrates a diagram of an exemplary environment in which someembodiments may operate.

FIG. 9 illustrates an example chart show grid load balancing.

FIG. 10A illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 10B illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 10C illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 10D illustrates an example user interface according to oneembodiment of the present disclosure.

FIG. 11A illustrates an example user interface according to oneembodiment of the present disclosure.

FIG. 11B illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 12 illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 13A illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 13B illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 13C illustrates example user interfaces according to one embodimentof the present disclosure.

FIG. 13D illustrates an example user interface according to oneembodiment of the present disclosure.

FIG. 13E illustrates an example user interface according to oneembodiment of the present disclosure.

DETAILED DESCRIPTION

In this specification, reference is made in detail to specificembodiments of the invention. Some of the embodiments or their aspectsare illustrated in the drawings. In some examples in the drawings thesystem as described herein is referred to by the trademark PowerX.

For clarity in explanation, the invention has been described withreference to specific embodiments, however, it should be understood thatthe invention is not limited to the described embodiments. On thecontrary, the invention covers alternatives, modifications, andequivalents as may be included within its scope as defined by any patentclaims. The following embodiments of the invention are set forth withoutany loss of generality to, and without imposing limitations on, theclaimed invention. In the following description, specific details areset forth in order to provide a thorough understanding of the presentinvention. The present invention may be practiced without some or all ofthese specific details. In addition, well known features may not havebeen described in detail to avoid unnecessarily obscuring the invention.

In addition, it should be understood that steps of the exemplary methodsset forth in this exemplary patent can be performed in different ordersthan the order presented in this specification. Furthermore, some stepsof the exemplary methods may be performed in parallel rather than beingperformed sequentially. Also, the steps of the exemplary methods may beperformed in a network environment in which some steps are performed bydifferent computers in the networked environment.

Some embodiments are implemented by a computer system. A computer systemmay include a processor, a memory, and a non-transitorycomputer-readable medium. The memory and non-transitory medium may storeinstructions for performing methods and steps described herein.

Example Utility Monitoring and Utility Usage Determination andOptimization System

FIG. 1 illustrates a diagram of an example system 100 utilized inutility monitoring and utility usage determination, control andoptimization. The system 100 may include a Device Setup Module 104, aData Acquisition Module 106, a Machine Learning Training Module 108, aMachine Learning Processing Module 110, a Data Presentation Module 112and a User Interface Module 116.

While the databases 120, 122, 124, 126 are displayed separately, thedatabases and information maintained in a database 120, 122, 124, 126may be combined together or further separated in a manner that promotesretrieval and storage efficiency and/or data security.

The Device Setup Module 104 may perform functionality related toreceiving information about sensor devices for configuration and setupfor a user account.

The Data Acquisition Module 106 may perform functionality related tohandling communication and receipt and transfer of data from/to the hubdevice 150 and/or to the individual sensor devices (i.e., the watersensor device 160, the electricity sensor device 170, and the waterheater sensor device 180).

The Machine Learning Training Module 108 may perform functionalityrelated to training one or more machine learning models based on utilityusage data.

The Machine Learning Processing Module 110 may perform functionalityrelated to processing received data from the sensor devices to predictor classify information or utility usage scenarios for a particular useraccount.

The Data Processing Module 112 may perform functionality related toadditional processing of utility usage data.

The User Interface Module 116 may perform functionality related torendering and display of information as described herein.

The User Device 140 may have an Application Engine 142 and a UserInterface 144. It is understood that the system 100 may further includeone or more additional modules for performing, or supporting performanceof, any operation(s), step(s), act(s), instruction(s) and process(es)described herein.

The system 100 may have multiple hub device(s) 150 connected to thesystem via a communications channel or link, such as the Internet. Thehub device 150 transmits information to the system 100 that has beenreceived from one or more of a water sensor device 160, an electricitysensor device 170 and/or a water heater sensor device 180.

Example Household Configuration

FIG. 2 illustrates a diagram of an example household configured with theutility monitoring and utility usage determination, control andoptimization system. As illustrated, a water sensor device 160 isinstalled and configured to obtain information about water usage. Theinformation obtained by the water sensor device 160 is communicated to ahub device 150 via wireless communications (e.g., LoRa—long rangewireless protocol). An electricity sensor device 170 is installed andconfigured to obtain information about electricity usage. Theinformation obtained by the electricity sensor device 170 is transmittedto the hub device 150 via wireless communications (e.g., via a LoRaprotocol). A water heater sensor device 180 is installed and configuredto obtain information about heat usage. The information obtained by thewater heater sensor device is transmitted to the hub device 150 viawireless communications (e.g., via a LoRa protocol). Whilecommunications may be made from the water sensor device 160, theelectricity sensor device 170, or the water heater sensor device 180 tothe hub device 150 via a LoRa protocol, other methods of wireless orwired transmission of information may be used. The system 100 may beconfigured with one or more of each of the water sensor device 160, theelectricity sensor device 170 and/or the water heater sensor device 180.For example, multiple water heater sensor devices 180 may be installedto monitor two water heaters.

The hub device 150 receives the information from the water sensor device160, the electricity sensor device 170, and/or the water heater sensordevice 180, and transmits the information to the system 100. Also, thehub device 150 may receive information from the system 100. The hubdevice 150 may be configured to communicate and control further controldevices such as smart plug devices, a smart thermostat or a smartshut-off mechanism to automatically stop water-flow remotely. The hubdevice 150 may also be configured to communicate to further sensingdevices such as humidity sensors (to better locate/predict leaks), gassensors (to locate/predict gas leaks), motion sensors (to optimize lightor heat depending on the usage of space by people), location sensors (tofind replaced items) and similar sensors. The smart plug device maycontrol various further devices such as lights and other electricalappliances. For example, the hub device 150 may control a smart plug toset time of operation of the electrical appliance connected to the smartplug. The water-flow controller may control various water outlets andautomatically protect against leaks. The thermostat may control heat inany location of the building.

Hub Device Configuration and Operation

FIG. 6A illustrates an example block diagram of a hub device 150 usedwith the utility monitoring and utility usage determination, control andoptimization system. The hub device 150 may be configured to communicatewith one or more sensor devices 160, 170, 180. Each of the sensordevices may use a LoRa transceiver to communicate data from and to thedevices 150, 160, 170, 180. For example, the devices may use a LoRaphysical layer operating in the 868 (CE) MHZ and 915 (FCC) industrial,scientific and medical (ISM) spectrum. The devices 150, 160, 170, 180may compress data, for example, using the LZ compression algorithm, orother suitable data compression process, before transmitting data toanother device, thereby reducing the overall device power consumption byefficiently transmitting data.

In one embodiment, the hub device 150 has a LoRa radio 610A, a WiFiradio 620B (and optionally a wired ethernet connection). The hub device150 may provide transmission collision avoidance processing to avoidboth radios 610A, 620A from transmitting at the same time. Thistransmission collision avoidance processing helps the hub device 150avoid undesired effects such as signal intermodulation if the two radios610A, 620B were to transmit at the same time. The hub device 150 may beconnected wired or wirelessly to smart plugs 650A or other devices orsensors which may monitor or control appliances, lighting or otherelectrical devices, water outlets, temperature, movement or other things(e.g. gas, humidity, location etc.)

The devices 150, 160, 170, 180 may be configured with a power supply forAC and/or DC power using batteries. For example, the hub device 150 maybe powered by a power supply 640A using AC, whereas water sensor device160 may be powered by batteries.

For those sensor devices such as water sensor device 160, or waterheating sensor device 180 installed with a gas water heater, the sensordevices 160, 180 may use battery power and operate in a low-power modeand in a regular power mode. In the low-power mode the sensor device160, 180 has the radio switched off and its microcontroller in a sleepstate. The sensor device 160, 180 may be configured to wake up atscheduled, random or pseudo-random time intervals. The hub device 150may send an instruction to the sensor device 160, 180 to set aparticular wake up time interval. At the determined wake up timeinterval, the sensor device 160, 180 activates it radio andmicrocontroller. The sensor device 160, 180 then begins obtaining itsrespective sensor data and transmits the data to the hub device 150.

The sensor devices 160, 170, 180 may also pre-process collected sensordata before transmitting the data the hub device 150. For example, thewater sensor device 160 may have onboard chip set that that obtains thesensor data, and converts the time it takes for ultrasound waves totravel through a pipe into a rate of flow value (such as liters orgallons per hour). The water sensor device 160 may sample at apredetermined sample rate, such as 2 times per second, and may determineand send statistical aggregates such as average and standard deviationsof larger time periods. This allows the water sensor device 160 toreduce the amount of data sent to the hub device 150, thereby savingbattery power. Additionally, as discussed above, the water sensor device160 may use data compression processing to reduce the amount of datatransmitted from the water sensor device 160 to the hub device. Thesensor devices 170, 180 determine and send statistical aggregates suchas average and standard deviations of larger time period. In someinstances, a water sensor device 160 may be powered for several years on3 or 4 AA batteries due to the battery saving measures taken by thewater sensor device 160.

Water Sensor Device Installation and Operation

FIG. 3A illustrates installation of a water sensor device 160 used withthe utility monitoring and utility usage determination, control andoptimization system. The water sensor device 160 provides measurement ofwater usage using ultra-sonic rays to monitor the flow of water througha pipe via ultrasound sensor caps. The water sensor device 160 may beplaced between the main valve going into a household and between themain pipe branches. The water sensor device 160 may be mounted on thepipe or on a wall. Ultrasound sensor caps are placed around or on top ofthe pipe and may be secured with screws, zip ties or other mountingtechniques. The water sensor device 160 may give direct ultrasoundperformance feedback to the user to place and calibrate the ultrasoundsensor caps for best performance. Furthermore, a downloadable app may beinstalled on a mobile device (such as a table or mobile phone). Themobile app may be used to calibrate the ultrasound sensor caps. Further,the downloadable app may be used to calibrate water volume measurement.The water sensor device 160 may be powered by an onboard power sourcesuch as batteries. The ultrasound sensor caps may be installed withoutlubricant. A silicone pad that is pre-mounted onto the sensor caps allowfor a higher accuracy of measurement. For example, the ultrasonicsensors may be coupled to the pipe using a silicone mix pad of 1 mm orthicker.

The water sensor device 160 may obtain sensor readings and transmit thesensor readings to the hub device 150. For example, the water sensordevice 160 may determine the flow rate of water flowing through the pipewhere the sensors are attached. The water sensor device 160 may transmitthe flow rate data (such as liters or gallons per hour) to the hubdevice 150. The water sensor device 160 may determine the length of timean ultrasound signal takes to travel through a pipe and return. Thesystem 100 may receive this time information and determine the size ofthe pipe based upon the length of travel time (e.g., determining a pipesize of ½ inch, ¾ inch, 1 inch, 2 inch, etc.).

Additionally, temperature sensors may be coupled to the water sensordevice 160 to measure the temperature of the pipe. This temperatureinformation may be transmitted to the hub device 150. For example,optionally two temperature sensors may be placed with one temperaturesensor attached to a main inflow pipe, and one temperature sensorattached to a returning pipe. The obtained temperature data may betransmitted to the hub device 150 for transmission to the system 100.The system 100 may then evaluate the water flow data and/or temperaturedata to determine the heat quantity used by the household or whether aleak is occurring. The temperature sensors do not require contact withthe water body, but rather the system 100 may rely on an algorithm thatis able to distill the water temperature and heat quantity used from thevarious temperature influencers, such as ambient temperature and pipesize, thickness or material.

Also, the water sensor device 160 may adjust the amount of powerrequired to send ultrasonic signals through the pipe and obtain thereturn signal via the ultrasound sensor caps. Information about thepower utilized may be sent from the water sensor device 160 to the hubdevice 150, such as the amount of power needed to obtain an effectiveultrasound signal. The power information may be received by the system100 and the system 100 may determine the type of material of which thepipe is made (e.g., PVC/CPVC/PEX, copper, or steel). The water sensordevice 160 would require less power to obtain an effective ultrasoundsignal for a PVC pipe as compared to a copper pipe. Similarly, the watersensor device 160, would require less power to obtain an effectiveultrasound signal for a copper pipe as compared to a steel pipe.

Other information that may be transmitted from the water sensor device160 include time, battery load status, error code information.

The water sensor device 100 may require calibration as to the pipe uponwhich the ultrasonic sensors are attached. The water sensor device 160may be calibrated via the mobile app, the system 100 and/or by the watersensor device 160 itself. For example, the water sensor device 160 maybe calibrated by determining the power it takes to send waves through apipe, by determining the amount of time it takes for ultrasonic waves totravel through a pipe and/or by user calibration using a volume of waterfilled into a container. The water sensor device 160 may have a lightthat indicates how well the ultrasound sensors are positioned (e.g.blinking faster if ultrasound is well positioned and signal isstrong/well readable and blinking slower if not).

In one calibration mode, the system 100 may calibrate for water flow byusing a length of time evaluation to determine the diameter and thematerial of the pipe. In another calibration mode of the water sensordevice 100, a user may fill a container (such as a bucket or pitcher)with a known volume of water (such as a quarter gallon or half a liter),and select a start and stop button on a displayed user interface of themobile app. The start button is selected when the water begins to fillthe buck, and the stop button is selected when the water had been added.The ultrasonic sensors would measure waterflow from the pipe to whichthey are attached. Since the amount of water filled into the containerwould be known, water sensor device 160 can calibrate itself.

Referring now to FIG. 6B, discussion of the water sensor device 180 mayaid in the understanding of the water sensor device 180 operation. FIG.6B illustrates an example block diagram of a water sensor device 160used with the utility monitoring and utility usage determination,control and optimization system. In one embodiment, the water sensordevice 160 may be configured with a LoRa radio 610B, a processor chip620B, a Microcontroller 630B and a power supply 640B. Transducer-typesensors 650B as described herein are interconnected with the watersensor device 180 to measure and monitor water flow and water usage.

The water sensor device 160 draws electricity (<5V) from batteries or aUSB adapter. A LoRA chip communicates with the hub device 150, and theLoRA chip is connected to an internal PCB antenna. The LoRa chip isfurther connected with 2 PT or NTC or digital temperature sensors viacable (Molex connector) and with a processor chip 620A. The processorchip 620A is connected to amplifiers and transducers. The transducerssend and receive the ultrasonic waves. The amplifiers amplify thetransducers' signal. The water sensor device 160 may use differentamplifiers depending on how thick the pipe is (e.g. 2 cm pipe needsdifferent amplifiers than 10 cm industrial pipe). The processor chipsamples and translates the signal and hands it via UART (or similarstandard) to the LoRA chip. The LoRa chip sends the temperature data tothe hub device 150.

The water sensor device 160 (and/or the hub device via a smart plug) maybe interconnected to a controllable water valve that allows control ofwater flow through a pipe. For example, an electro-mechanically operatedwater valve may be disposed in the main water line, or some other waterline of the household. The water sensor device may control the watervalue to open and close the water valve. In one instance, the system 100may determine that the house will be unoccupied for a period of time andmay close the one or more water valves to stop any flow of water in arespective water line. The system 100 may also close the water valve ifthe system 100 determines a leak and/or if the user remotely turns offthe water (for example, via a mobile application).

Electricity Sensor Device Installation and Operation

FIG. 3B illustrates installation of an electricity sensor device 170used with the utility monitoring and utility usage determination,control and optimization system. Power to the household should be turnedoff during installation. The electricity sensor device 170 may beinstalled inside or outside of the electricity panel. Clamps are placedaround the two electrical mains and connect to the electricity sensordevice 170. The electricity sensor device may be powered by connectingthe device to a circuit in the electric panel. After the electricitysensor device 170 is installed, the power may be turned on. The clampsmeasure the electric current of the two electrical mains (three electricmains L1, L2, L3 for some households, particularly in European setup).The electricity sensor device 170 may transmit electric current dataobtained by the clamps to the hub device 150. For example, theelectricity sensor device 170 provides a manner of monitoringelectricity usage by using an external magnetic pulse sensor that mayread electrical current at a rate of over 1 million times (or samplesper second). Furthermore, additional clamps may be included connected tothe electricity sensor device and a solar panel system to obtaininformation regarding the current flow of a solar panel system. This canbe paired with the water heater sensor device 180. This pairing allowsthe system to ensure that current supplied by the solar panel system isprimarily stored as thermal energy in the water heater (i.e., runningthe water heater when solar delivers current) as this is cheaper andmore efficient than feeding over-supply solar current into the grid.

The electricity sensor device 170 may transmit information to the devicehub 150. For example, the electricity sensor device 170 may transmitinformation related to voltage, amperage (up to a million times persecond, and from 2 or 3 phases, and optionally 2 or 3 solar phases),hertz, waveform and error code information. The electricity sensordevice 170 collects the voltage from a household/electric panel with anelectrical connection (such as wiring) from the electricity sensordevice 170 to a circuit breaker. The electricity sensor device measuresthe amperage flowing through in different phases form the electricalpanel using the clamp meters.

Referring now to FIG. 6C, discussion of the electricity sensor device180 may aid in the understanding of the electricity sensor device 180operation. FIG. 6C illustrates an example block diagram of anelectricity sensor device 170 used with the utility monitoring andutility usage determination, control and optimization system. In oneembodiment, the electricity sensor device 170 may be configured with aLoRa radio 610C, a processor chip 620C, a Microcontroller 630C, powersupply 640C, and electricity usage sensors 650C. Electricity usagesensors 650C as described herein are interconnected with the electricitysensor device 180.

The electricity sensor device 170 draws electricity at 120 or 240 voltsdirectly from the circuit breaker to which leads are attached andtransforms it down to <5V. A LoRA chip communicates with the hub device,and the LoRa chip is connected to an internal PCB antenna. The LoRa chipis further connected to 2-6 clamps via cable (Molex connector). Sensorclamps may be placed around the electricity panel main lead wiring. Theclamps measure electric current by being clamped around the main phases(and solar, if applicable). The Lora chip further is connected to avoltage sensor to get the voltage from the circuit breaker, viaconnected wiring, and to the transformer that steps down the circuitbreaker voltage. The processor chip 620C may process obtained sensordata. The LoRa chip sends the temperature data to the hub device 150.

Water Heater Sensor Device Installation and Operation

FIG. 3C illustrates installation of a water heater sensor device 180used with the utility monitoring and utility usage determination,control and optimization system. As depicted the water heater sensordevice 180 is installed for monitoring heat usage from an electric waterheater. Power to the household should be turned off during installationfor electric heaters and power-vented gas heaters, and for standard gasheaters switching off power is optional. The water heater sensor device180 may be attached to the water heater. A first temperature sensor maybe attached (e.g., slid between the insulation of the tank and) to theTemperature and Pressure relief (T&P) valve of the water heater. Asecond temperature sensor is attached to the cold water pipe going intothe water heater. A third temperature sensor may be attached to the hotwater pipe going out of the water heater. The circuit breaker may beturned back on after installation (for electric and power-vented gasheaters). The water heater sensor device 180 for electric heaters ispowered by the same electricity source that feeds current to theelectric heater. The water heater sensor device 180 may transmittemperature data obtained by the first, second and optionally thirdtemperature sensors to the hub device 150. For electric heaters, thewater sensor device 180 receives voltage and amperage information fromthe wire going to the electric heater (which is also how the electricheater is controlled by the water heater sensor device 180, through arelay being able to turn it on/off).

for gas heaters, it receives data from the gas controller (and controlsit via the controller)

FIG. 3D illustrates installation of a water heater sensor device 180used with the utility monitoring and usage determination system. Asdepicted the water heater sensor device 180 is installed for monitoringheat usage from a gas water heater. The water heater should be unpluggedif it is a power-vented model. The water heater sensor device 180 may beattached to the water heater. A second temperature sensor is attached tothe cold water pipe going into the water heater. A third temperaturesensor may be attached to the hot water pipe going out of the waterheater. The water heater sensor device 180 may be attached to the waterheater valve controller, obtain data and send queries and tasks to thecontroller. The water heater sensor device 180 may be powered by anexternal power source or an onboard power source such as batteries.

FIG. 3E illustrates installation of a water heater sensor device 180used with the utility monitoring and usage determination system. Asdepicted the water heater sensor device 180 is installed for monitoringheat usage from a gas water heater.

FIGS. 4A and 4B illustrate configuration of a water heater sensor device180 used with the utility monitoring and usage determination system. Tosupply hot water, water is heated in a water heater tank through aheating element, which may be heated by electric current or gas. Whenthe hot water is withdrawn by a user, for example through a shower, newcold water is drawn into the water tank and heated up.

From the measured temperatures, the system 100 is able to calculate thevolume of and the according energy spent on the hot water used. Based onthe measurements, the system 100 may control the water heater to adjuston and off cycles of the water heater, thereby achieving significantenergy and cost savings. The system 100 may save energy and cost fromwater heating by: (i) lowering the desired temperature of the hot water(adjusting the thermostat), (ii) turning off the heater (e.g. duringvacations when no hot water is needed), (iii) focusing heating cycles ontemperature brackets that are more efficient, (iv) focusing heatingcycles to better coincide with user demand or times when electricitycost are low, and/or (v) focusing heating and stop cycles on times whenthere is over-/undersupply of electricity/gas in the grid so as to helpload balance the grid.

The water heater sensor device 180 provides measurement and monitoringof thermal energy consumption for electric water heaters throughexternal negative-temperature-coefficient or digital temperaturesensors. The water heater sensor device 180 may also provide measurementand monitoring of thermal energy consumption for gas water heatersthrough external negative-temperature-coefficient sensors or digitaltemperature sensors. Also, the water heater sensor device 180 mayprovide measurement and monitoring of thermal energy consumption for gaswater heaters through a gas valve controller signal.

The water heater sensor device 180 can derive temperature informationwithin a tank of the water heater as well as information about heatingtimes and patterns by measuring temperature with exterior temperaturesensors. These temperature sensors may be attached to the water heatertank, the cold water inlet of the water heater and the hot water outletof the water heater. The temperature sensors do not require contact withthe water body, but rather the system 100 may rely on an algorithm thatis able to distill the water temperature from the various temperatureinfluencers, such as ambient temperature and insulation.

The water heater sensor device 180 may provide control of electric waterheaters by regulating electricity supply based on optimizationalgorithms trained with local data. The water heater sensor device 180may provide for control of gas water heaters by regulating gas supplybased on optimization algorithms trained with local data. The waterheater sensor device 180 may automatically adjust temperature and heatcycle times thereby providing significant cost savings. The water heatersensor device 180 may control the water heater either through a relayfor electric water heaters or through communicating via the standardprotocol of gas water heaters.

The water heater sensor device 180 may calculate thermal energy usagethrough the use of external negative-temperature-coefficient temperaturesensors and/or temperature readings from the gas valve for gas heaters.Furthermore, relying on machine learning algorithms it can achieve ahigh level of measurement accuracy. Also, the water heater sensor device180 may provide for significant energy saving by learning and adjustingtemperatures to the needs of a user and by turning off the water heaterwhen no hot water is needed (e.g. when user is on vacation).

The water heater sensor device 180 offers significant opportunities forutility companies and grid load balancing. For example, a standardelectric water heater in the United States consumes 4 to 5 Kilowatt andmay—over a daily heating time of 3 hours—take more than 10 Kilowatthours of electric load (converted into thermal energy). The water heatersensor device 180 may activate and deactivate this load at any time.This system functionality provides for utility companies to increase ordecrease the load on their electric grid to smooth and match supply anddemand of electricity.

Water Heater Sensor Device Operation with a Gas Water Heater

Referring to FIG. 4A, in one embodiment for a gas water heater (400),the water heater sensor device 180-A may be connected to multipletemperature sensors to obtain temperature information from the gas waterheater. A first negative-temperature-coefficient (NTC) temperaturesensor 405 may be connected to Temperature and Pressure (T&P) ReliefValve 410. Temperature sensor 405 may be epoxy coated and may have acircular footprint of a dimeter of less than 3 mm to fit in between tankinsulation 415 of the water heater 400 and the pipe of the (T&P) ReliefValve 410. Temperature sensor 405 measures the temperature inside thewater tank 420. A second temperature sensor NTC 425 may be connected tothe cold water inlet pipe 430. Temperature sensor 425 measures thetemperature of the cold water flow to predict heating cycles. A thirdNTC temperature sensor 435 may be connected to the warm water outletpipe 460. This increases the accuracy of the water heater sensor device180 to predict heating cycles and water temperature inside the tank 420.As used herein, any suitable temperature sensor may be used with thewater heater sensor device 180 to obtain temperature information, suchas NTC thermistors, PTC thermistors, and/or digital sensors.

A Controller Signal Connector 455 of the water heater 400 may obtainother temperature data values and may obtain other data from the gasvalve controller 440 via the standard protocol of the gas valvecontroller 440. For example, the gas valve controller may have circuitythat collects data about the water heater 400. The Controller SignalConnector 455 may regulate the heating element 445 by controlling theopening status of the gas supply 450 pipe through the gas valvecontroller 440 using the same standard protocol.

The water heater sensor device 180-A collects the temperature data fromtemperature sensors 405, 425 and 435, and may collect other data from aconnection to an interface of the gas valve controller 440 through theController Signal Connector 455. The information may be transmitted viathe water heater sensor device 180-A to the hub device 150 and to thesystem 100 either through direct connection with the interne.

Water Heater Sensor Device Operation with an Electric Water Heater

Referring to FIG. 4B, in one embodiment for a gas water heater (400),the water heater sensor device 180-A may be connected to multipletemperature sensors to obtain temperature information from the gas waterheater. A negative-temperature-coefficient (NTC) temperature sensor 406may be connected to Temperature and Pressure (T&P) Relief Valve 411. TheNTC temperature sensor 406 may be epoxy coated and may have a circularfootprint of a dimeter of less than 3 mm to fit in between theinsulation 416 of the water heater 401 and the pipe of the (T&P) ReliefValve 411. Temperature sensor 406 measures the temperature inside thewater tank 421. A further temperature sensor NTC 426 may be connected tothe cold water inlet pipe 431. Sensor NTC 426 measures the flow of coldwater to predict heating cycles. A third NTC temperature sensor 436 maybe connected to the warm water outlet pipe 461. This increases theaccuracy of the water heater sensor device 180 to predict heating cyclesand water temperature inside the tank. Any suitable temperature sensormay be used with the water heater sensor device 180-A to obtaintemperature information, such as NTC thermistors, PTC thermistors,digital sensors.

The water heater sensor device 180-B collects the temperature data fromthe temperature sensors 406, 426, 436. The water heater sensor device180-B may collect data on Voltage, Amperage and heating cycles from theelectric supply 465. The water heater sensor device 180-B may beinstalled such that it can break the direct electric supply 465 to theJunction Box 475 through an internal relay. The Electric HeaterController 456 may transmit data to an external server or service (suchas system 100) either through direct connection with the internet or viaan additional hub, such as hub device 150.

Referring now to FIG. 6D, discussion of the water heater sensor device180 may aid in the understanding of the water heater sensor device 180operation. FIG. 6D illustrates an example block diagram of a waterheater sensor device 180 used with the utility monitoring and utilityusage determination, control and optimization system. The water heatersensor device 180 may be installed with a gas water heater or anelectric water heater. In one embodiment, the water heater sensor device180 may be configured with a LoRa radio 610D, a processor chip 620D, aMicrocontroller 630D and a power supply 640D. Temperature sensors 650Das described herein are interconnected with the water heater sensordevice 180.

The water heater sensor device 180 when installed with a gas waterheater draws electricity (<5V) from batteries or a USB adapter. A LoRAchip communicates with the hub device 150, and is connected to aninternal PCB antenna. The LoRa chip is further connected with 2-3 PT orNTC or digital temperature sensors via cable (Molex connector). The LoRachip is further connected to a TX/RX/GROUND (IRDA) cable (Molexconnector) that may send and receive data from/to the gas valvecontroller of the water heater. The LoRa chip may further receive datafrom a water leak sensor cable connected via Molex connector.

Various information about the gas water heater be obtained by the waterheater sensor device 180 and transmitted to the hub device 150. Many gaswater heaters have a controller that provides information about the gaswater heater, and other gas water heaters do not. Gas water heaters, forexample, have a gas valve controller that can be read for data about thegas water heater. Data obtained by the water heater sensor device 180may include actual water temperature inside the water heater tank (assensed by internal temperature probe), adjusted water temperature insidetank (temperature probe adjusts for conditions and misreadings), ambienttemperature, set desired temperatures of the water heater by the user,heating requests to heat water, ignition burner valve voltage,thermopile condition, Controller PCB voltage, error codes, codes sent bythe system to the controller (e.g. code to start or stop heating or toset a different max. temperature), battery load status, water leakdetection measured by a copper cable that spins down the water heater,gas density to estimate any form of gas (LPG, Natural Gas, Town Gas,Carbon Monoxide, Coal Gas, Liquefied Gas) in the atmosphere indicating agas leak, and/or temperature sensor data from the temperature sensorsplaced about the water heater (e.g., about the relief valve (to estimatetank temperature), on the cold water pipe, and/or the hot water pipe).

The water heater sensor device 180 when installed with an electric waterheater draws electricity (<5V) from batteries or a USB adapter. A LoRAchip communicates with the Hub, and the LoRA chip is connected to aninternal PCB antenna. The LoRa chip is further connected with 2-3 PT orNTC or digital temperature sensors via cable (Molex connector). The LoRachip is further connected to a TX/RX/GROUND (IRDA) cable (Molexconnector) that may send and receive data from/to the gas valvecontroller of the water heater. The LoRa chip may further receive datafrom a water leak sensor cable connected via Molex connector. Theprocessor chip 620D may process obtained sensor data.

In one configuration, the water heater sensor device 180 when installedwith an electric water heater draws electricity at 120 or 240 volt fromthe wire connecting the water heater sensor device 180 to the electricwater heater and transforms it down to <5V. A LoRA chip communicateswith the Hub, and is connected to an internal PCB antenna. The LoRa chipis further connected with 2-3 PT or NTC or digital temperature sensorsvia cable (Molex connector). The LoRa chip is further connected to avoltage and amperage sensor (on PCB). The sensors measure the electriccurrent flowing in the wire to the electric heater. The LoRa chip isfurther connected to a relay. The relay can stop the current flow to theelectric heater. The LoRa chip may further receive data from a waterleak sensor cable connected via Molex connector.

Various information about the electric water heater be obtained by thewater heater sensor device 180 and transmitted to the hub device 150.For example, the water heater sensor device 180 may obtain temperaturesensor data from the temperature sensors placed about the water heater(e.g., about the relief valve (to estimate tank temperature), on thecold water pipe, and/or the hot water pipe). Additionally, the waterheater sensor device 180 may obtain water heater voltage, amperage,relay control status (e.g., opened/closed), and water leak occurrencewhich may be measured with a copper cable that spins down the waterheater.

Utility Monitoring and Usage Determination Process Overview

FIG. 5 illustrates an example of an overview of a process 500 forutility monitoring and utility usage determination. The hub device 150receives data from sensor devices 160, 170, 180 that have been installedto obtain respective utility information data (step 510). The hub devicemay transmit the utility information to a service (such as the system100) (step 520). The system 100 receives the utility information datafrom respective hub devices 150 (step 530). The system 100 stores andprocesses the received utility information data associating the datawith respective user account. The system 100 processes the utilityinformation data using one or more machine learning models to determineutility usage characteristics (step 540). The system 100 generates oneor more user interfaces providing usage characteristics (step 550).

Example Water Usage User Interfaces

Referring now to FIG. 7A, a discussion of system 100 generated userinterfaces related to the sensor data obtained by the water sensordevice 160 are described. FIG. 7A illustrates example user interfaces760, 765 according to one embodiment of the present disclosure. The userinterfaces 760, 765 may be generated by the user interface module 116and in conjunction with the application engine 142 and be displayed asuser interface 144. The user interfaces 760, 765 may display heatutilization information from the data collected by an electricity sensordevice 160. After a sensor device 160 is added the system 100 mayreceive utility usage data via the data acquisition module 106. The dataprocessing module 112 may determine cost information, carbon dioxideemission, comparison of utility usage to other users, a timeline ofutility usage, largest consumption, and water usage.

The user interfaces 760, 765 may display the different types of waterusages. For example, the system 100 may determine and generate a userinterface displaying water usage information for devices, appliancesand/or water outlets, such as a toilet, shower, dishwasher, washingmachine, pool, etc.

The user interface 760, 765 may display cost information for the waterusage depicting such usage over a time-based period, such as days,months or years. The system 100 may calculate water usage costs based ondetermination of the water volume used as to cost data per volume ofwater used. The system 100 may also receive user input indicating theactual water usage used and the actual cost for the actual water usage(e.g., data input from a utility bill). The system 100 then may use thisinformation to calibrate the water sensor device 160. The system 100 maygenerate energy/cost saving suggestions via a machine learningalgorithm, and display via the user interface an example of how toimplement the energy/cost saving suggestions via user interface 760,765.

The user interface 760, 765 may display actual or current water usage,such as liters or gallons per minute. The user interface 760, 765 maydisplay a goal represented by a graphical circular ring representing theportion of the goal achieved. A usage goal may be input by a userdescribing a maximum amount of water to be used within a period of timesuch as a month. The system will monitor and report the actual waterusage as to the usage goal. The user interface 760, 765 may display thewater usage goal and the amount of water used within the goal timeperiod. The system 100 may generate and send notifications to a userwhen a percentage of user goal has been reached.

The user interface 760, 765 may display the connection status and thesignal strength of the LoRa wireless signal of the water sensor device160.

The user interface 760, 765 may display the amount of carbon dioxideemission of the household based on an evaluation by the system of theutility information as compared to emissions tables and data correlatedto utility usage.

The system may determine how a particular household compares to otherhouseholds within a geographic area. The user interface 760, 765 maydisplay a graph or other information depicting how the user's householdcompares to other households within a predetermined geographic region orlocation. For example, the user interface may display a determinedpercentage of how the user's household costs compare to otherhouseholds.

Example Electricity Usage User Interfaces

Referring now to FIG. 7B, a discussion of system 100 generated userinterfaces related to the sensor data obtained by the electricity sensordevice 170 are described. FIG. 7B illustrates example user interfaces770, 775 according to one embodiment of the present disclosure. The userinterfaces 770, 775 may be generated by the user interface module 116and in conjunction with the application engine 142 and be displayed asuser interface 144. The user interfaces 770, 775 may display electricityutilization information from the data collected by an electricity sensordevice 170. After a sensor device 170 is added the system 100 mayreceive utility usage data via the data acquisition module 106. The dataprocessing module 112 may determine cost information, carbon dioxideemission, comparison of utility usage to other users, a timeline ofutility usage, largest consumption, and electricity usage.

The user interfaces 770, 775 may display the different types ofelectricity usages. For example, the system 100 may determine andgenerate a user interface displaying electricity usage information fordevices or appliances, such as an air conditioner, dryer, washingmachine, refrigerator, television, lighting, etc.

The user interface 770, 775 may display cost information for theelectricity usage depicting such usage over a time-based period, such asdays, months or years. The system 100 may calculate electricity usagecosts based on determination of the electricity amount used as to costdata per unit (e.g., kWh) of electricity used. The system 100 may alsoreceive user input indicating the actual electricity usage used and theactual cost for the actual electricity usage (e.g., data input from autility bill). The system 100 then may use this information to calibratethe electricity sensor device 170. The system 100 may generateenergy/cost saving suggestions via a machine learning algorithm, anddisplaying via the user interface an example of how to implement theenergy/cost saving suggestions via user interface 770, 775.

The user interface 770, 775 may display actual or current electricityusage, such as kWh per minute or hour used. The user interface 770, 775may display a goal represented by a graphical circular ring representingthe portion of the goal achieved. A usage goal may be input by a userdescribing a maximum amount of electricity to be used within a period oftime such as a month. The system will monitor and report the actualelectricity usage as to the usage goal. The user interface 770, 775 maydisplay the electricity usage goal and the amount of electricity usedwithin the goal time period. The system 100 may generate and sendnotifications to a user when a percentage of user goal has been reached.

The user interface 770, 775 may display the connection status and thesignal strength of the LoRa wireless signal of the electricity sensordevice 170.

The user interface 770, 775 may display the amount of carbon dioxideemission of the household based on an evaluation by the system of theutility information as compared to emissions tables and data correlatedto utility usage.

The system 100 may determine how a particular household compares toother households within a geographic area. The user interface 770, 775may display a graph or other information depicting how the user'shousehold compares to other households within a predetermined geographicregion or location. For example, the user interface may display adetermined percentage of how the user's household costs compare to otherhouseholds. Based on the received sensor device the system 100 may alsodetermine appliances or devices that may need maintenance due todetermined inefficient operations.

Example Heat Usage User Interfaces

Referring now to FIG. 7C, a discussion of system 100 generated userinterfaces related to the sensor data obtained by the water heatersensor device 180 are described. FIG. 7C illustrates example userinterfaces 780, 785 according to one embodiment of the presentdisclosure. The user interfaces 780, 785 may be generated by the userinterface module 116 and in conjunction with the application engine 142and be displayed as user interface 144. The user interface 780, 785 maydisplay heat utilization information from the data collected by a waterheater sensor device 180. After a water heater sensor device 180 isadded the system 100 may receive utility usage data via the dataacquisition module 106. The data processing module 112 may determinecost information, carbon dioxide emission, comparison of utility usageto other users, a timeline of utility usage, largest consumption, andenergy and water usage.

The user interfaces 780, 785 may display the different informationrelated to water heater usage. For example, the system 100 may determineand generate a user interface displaying heat usage information for awater heater. The user interfaces 780, 785 may also display savingsrelated information as the control changes made by the system 100 as tooperation of a water heater. For example, the user interface 780, 785may display savings related to improved cycle time, vacation-shut offand/or updated temperature. The system 100 may generate energy/costsaving suggestions via a machine learning algorithm, and displaying viathe user interface an example of how to implement the energy/cost savingsuggestion (e.g. displaying a message that you had 3 appliances instandby mode for over 3 months, and you can save 5% if you switch theseoff completely).

The user interface 780, 785 may display cost information for the waterheater utility usage depicting such usage over a time-based period, suchas days, months or years. For example, the system 100 may calculateutility usage costs based on determination of the electricity and/orwater amount used.

The user interface 780, 785 may display actual or current temperaturevalue for the water heater, such as degrees in Fahrenheit or Celsius.The user interface 780, 785 may display a goal represented by agraphical circular ring representing the portion of the goal achieved. Ausage goal may be input by a user describing a maximum amount of thermalunits to be used within a period of time such as a month. The systemwill monitor and report the actual thermal usage as to the usage goal.The user interface 780, 785 may display the thermal usage goal and anamount of thermal units used within the goal time period. The system 100may generate and send notifications to a user when a percentage of usergoal has been reached.

The user interface 780, 785 may display the connection status and thesignal strength of the LoRa wireless signal of the water heater sensordevice 180.

The user interface 780, 785 may display the amount of carbon dioxideemission of the household based on an evaluation by the system of theutility information as compared to emissions tables and data correlatedto utility usage.

The system 100 may determine how a particular household compares toother households within a geographic area. The user interface 770, 775may display a graph or other information depicting how the user'shousehold compares to other households within a predetermined geographicregion or location. For example, the user interface may display adetermined percentage of how the user's household costs compare to otherhouseholds.

Moreover, the system 100 may determine that a water heater may needmaintenance and/or is experiencing problems or inefficient operation.The user interface may display information about maintenance oroperational issues. For instance, int the case of gas heaters, the userinterface is able to display voltage and error status of the waterheater, the thermopile (i.e., ignition burner), and whether there areany issues with the water heater.

FIG. 7D illustrates an example user interface 740 according to oneembodiment of the present disclosure. The user interface 740 may begenerated by the user interface module 116 and in conjunction with theapplication engine 142 and be displayed as user interface 144. The userinterface 740 provides functionality allowing a user to add and/orconfigure different sensor devices 160, 170, 180 to a user account. Forexample, via the device setup module 104, a user may setup and configurea sensor device. The user interface receives a selection of a sensordevice to add. After a sensor device is added the system 100 may receiveutility usage data via the data acquisition module 106. The dataprocessing module 112 may determine cost information, carbon dioxideemission, comparison of utility usage to other users, a timeline ofutility usage, largest consumption, and energy and water usage. Forexample, the timeline may be segmented into times of when outlets orappliances began running and were turned off, of if water was heated bya water heater, or whether an error occurred, or whether a device seemsto need maintenance, etc. (E.g., the timeline may show a shower startedat 4 p.m., ran for 10 minutes, and a coffee machine started at 4:10p.m., and ran for 2 minutes.)

Water Leak Determination and User Notification

Referring now to FIG. 7E, a discussion of system 100 determined waterleakage and user notification via an example user interface isdescribed. FIG. 7E illustrates an example user interface 790 accordingto one embodiment of the present disclosure. The water sensor device 160provides real-time leak detection and providing alerts for examplethrough a mobile application. For example, the water sensor device 160may monitor the flow of water, the system 100 receives the water usageinformation and may determine that that a leak is occurring. If a leakis determined to be occurring, then the system 100 may provide anotification or alert to the user via a user interface 790.

The user interface 790 may be generated by the user interface module 116and in conjunction with the application engine 142 and be displayed asuser interface 144. As discussed previously, the system 100 maydetermine leaks occurring in the water pipelines of a structure orhousehold. The user interface 790 may be generated indicating that aleak has occurred, and the severity of the leak and the possiblelocation of the leak. Usage information may be calculated by the dataprocessing module 112.

The system 100 may determine the occurrence of a water leak by measuringthe rate of flow of water per hour (such as liters/hour or gallon/hour).For example, at certain time periods of the day, such as late at nightor early in the morning, use of water at a household typically would bezero. The system 100 may evaluate water flow at certain time periods,and if water flow is detected, then a leak may be determined to exist.

In further detail to determine the occurrence of a water leak, first thesystem 100 may increase precision of leak detection or determination byusing noise reduction through machine learning processing to be able toidentify very small leak flows such as 0.5 liter/hour. For example, theusual data from normal or common water flow usage is rather noisy. Everysecond the signal may jump up or down, centering around 0 (if there isno water flowing), so it may look like −29, +13, −2, +5. The datafollows a sinus wave noise form around 0. The machine learningprocessing module 100 may uses a smoothing algorithm to remove thisnoise making it more precise.

Second, the system 100 evaluates for a flow-signature. The system 100may calculate out existing devices (e.g. when shower, pool, faucet,washing machine, etc.) are all accounted for and there is then still asignature that has small standard deviation and small flow, and there isno outlet signature that fits to it we expect a leak (e.g. there is noreal outlet that has a signature of 0.5 1/hour, constant flow, day andnight, slightly increasing over time, also running when users are outfor vacation as indicated by the electricity sensor device 170).

Third, the system 100 may couple the information received fromtemperature sensors connected to the water sensor device 160. Thetemperature sensors of water sensor device 160 may indicate whetherthere is any change in temperature between the inflow and backflow pipe.If there is not, the water likely gets lost somewhere in between.

Fourth, the system 100 evaluates other sensors and determines the sensordata being received by those sensors. For example, if the water heatersensor device 180 has a continuous small inflow of cold water over timeand the heat goes down slightly more quickly than is expected by thesystem 100, the system 100 may determine that there is a suspected leakin the warm water pipe section. On the other hand, if the water heatersensor device 180 does not show any changes, the system 100 determinethere is a suspected leak in the cold water pipe section. If the leakappears right after a certain device was shown to run (by theelectricity sensor device 170 or the water sensor device 160), thesystem may determine a suspected leak is correlated with the pipe thatserves this device. For example, if a washing machine was running andafter that, the system 100 determines a continuous outflow of water of0.5 1/hour or more an alert or message may be generated, and the usermay be informed by the system of the occurrence of a suspected leak. Inconfiguration and setup, the mobile application may receive input wherethe user may set up how precise the user wants us to measure leaks. Themore precise the system measures for leaks, then the more leaks may beidentified when there actually may be none. If the system 100 only lookfor medium or large leaks, then the system 100 may have a higheraccuracy for identifying actual leaks.

Machine Learning and Obtained Sensor Data Evaluation

The system 100 and the machine learning processing module 110 may useseveral different combinations of artificial intelligence, machinelearning, and/or deep learning processing as to the sensor data obtainedfrom the sensor devices 160, 170, 180. These include, for example,1-dimensional Convolution Neural Network (CNN), 2-dimensionalConvolution Neural Network, 3-dimensional Convolution Neural Network,Recurrent Neural Networks, and Deep Temporal Clustering. The system 100may train various machine learning models using the machine learningtraining module 108. To train the machine learning models, the system100 may use actual or simulated utility usage data. The machine learningmodels and associated training data may be stored in a data storagerepository, such as the database for the machine learning model data124.

The following examples illustrate various machine learning processingthat may be performed by the system 100 to classify and/or determine aconfidence level or probability that an appliance, device and/or wateroutlet is being used and/or that an activity is occurring or hasoccurred. The machine learning processing module 110 may determineparticular types of water sources being used (e.g., showers, waterfaucets, toilets, dishwasher and washing machines, etc.). The machinelearning processing module 110 may determine particular types ofelectrical appliances being used (e.g., dish washer, refrigerator,televisions, computers, washing machines, dyers, lighting, etc.) and/orwater outlets (e.g., showers, sinks, pools, water irrigation systems,etc.).

Referring back to combinations of artificial intelligence, machinelearning, and/or deep learning processing, the system 100 may use a1-dimensional Convolution Neural Network to identify patterns over time.For example, the system 100 may determine that a shower shows a certainpattern where water flow first increases, then stays rather stable at aspecific liter per hour water usage level, then the water usage leveldecreases, usually taking a certain time of 3-25 minutes. The system 100may then determine and/or classify the water flow usage pattern as abeing a shower.

The system 100 may use a 2-dimensional Convolution Neural Network torecognize patterns, for example, a signal spectrogram. The system 100may use this CNN to identify patterns (e.g. showers from a certainspectrogram 2D image with water over time) or inputs from more than onesource (e.g. showers use both heat and water over time). The system 100may evaluate heat values on an X-axis, and water flow values on a Y-axisand then obtain a signal spectrogram which is specific to showers. Thesystem 100 may then use the signal spectrogram to determine and/orclassifying the utility usage pattern of an appliance or device to bethat of a shower.

The system 100 may use 3-dimensional Convolution Neural Network torecognize patterns e.g. signal spectrogram. The system 100 may use thisCNN to identify patterns and inputs from more than one source (e.g.washing machines use heat and water and electricity over time). Thesystem 100 may evaluate heat values on an X-axis, water flow values on aY-axis, and electricity values on a Z-axis. The system 100 may determineor draw this over time, and then obtain a signal spectrogram which isspecific to washing machines. The system 100 may then use the signalspectrogram to determine and/or classifying the utility usage pattern ofan appliance or device to be that of a washing machine.

The system 100 may use Recurrent Neural Networks (e.g. LSTM, gru.) todetermine temporal dynamic behavior (and is similar to a 1-dimensionalCNN). For example, with received sensor data from the electricity sensordevice 170, the system 100 may observe a certain Amperage load patternand classifies the utility usage pattern of an appliance or device to bethat of a clothes dryer.

The system 100 may use Deep Temporal Clustering to obtain value fromunsupervised learning of patterns in temporal sequences and to deal withoverlapping of the simultaneously happening events (shower and faucetfor example). The system 100 may obtain time series data from sensordevices 160, 170, 180. The system 100 would have time-based utilityusage informative including features on different time scales and maydisentangle the data manifolds by processing the time-based utilityinformation in three stages. First, the system 100 may use CNNprocessing to reduce the data dimensionality and determine the mainshort-time-scale waveforms. Second the system 100, may use BI-LSTM tolower the data dimensionality even more and determine the temporalconnections between different waveforms across all time scales. Last,the system 100 may determine non-parametric clustering of BI-LSTM latentrepresentations. The system 100 may then compare determinedpre-annotated clusters with the utility sensor data from the sensordevices 160, 170, 180.

To system 100 may learn and determine utility usage patterns, user usagepatterns, and/or sensor device 160, 170, 180 specific patterns usingshort-term utility usage information in combination with long-termutility usage information. For example, the system 100 may combine somelocal level descriptors (e.g., the last couple of minutes of obtainedsensor data) that model what is happening now and combine long-termdescriptors that encode information about the overall performance (e.g.,daily/weekly data) as well as the metadata (e.g., pipe type whenavailable).

To make predictions more precise, the system 100 may use location-based,temporal and/or other archetypes to increase the predictability ordetermination of the usage of an appliance or device. For example,temporal archetypes may indicate activities or usage of appliances ordevices based on when the activity or usage is occurring. For example,water sprinklers tend to operate in the early morning, showers tend tohappen later in the morning, while cooking happens around noon. Thesystem 100 may use the time or time range of the day that utility usageis occurring to weight the likelihood of a particular appliance(s) ordevice(s) being used.

Local archetypes may indicate activities or usage of appliances ordevices based on the location of the household being monitored by thesensor devices 160, 170, 180. For example, households in colderclimates, such as Alaska, may use their water heaters more often,whereas households in warmer climates, such as Texas, may use their airconditioners more on highest loads, etc. The system 100 may use ageographic location of a household to weight the likelihood thatparticular appliance(s) or device(s) are being used.

The system 100 may also use other archetypes to weight the likelihoodthat particular appliances(s) or devices are being used. For example,the system 100 may obtain information about the number of householdoccupants and/or the size of the household. Information can be used bythe system 100, such as large household tend to have pipes of materialx, larger capacity water heaters may be used (such as 60 gallon waterheaters), more time is spent for the use of showers and the use ofappliances where there is a greater number of household occupants.

In some instances, the system 100 may use a Shapelet approach (shapelettransform) to create a baseline for further improvement to theprediction or classification of particular appliances or devices beingused.

The system 100 may also use reinforced learning with the machinelearning models. For example, if the system 100 is not able to classifyor determine a particular appliance or device being used, the system 100may obtain user confirmation via the user 140 receiving input from theuser interface 144. For example, the system 100 may not be able todetermine high enough confidence/probability or is not able to classifya particular appliance or device based on the received sensor data fromthe one or more sensor device 160, 170, 180. To obtain confirmation ofthe household appliance or device, the system 100 may provideinformation to the user noting a probability that a particular applianceor device has been determined, and request user confirmation of theactual appliance or device that was being used. For example, the system100 may identify the water flow (or electric flow) as (a) a washingmachine having a 60% probability, (b) a dishwasher having a 30%probability or (c) something else having a 10% probability. The system100 obtains the users confirmation of the actual application or devicethat was used. The system 100 then uses the user feedback to improve thepredictability and/or classifications of the machine learning models.

Further, the system 100 may use other machine learning techniques andprocessing. For instance, the system 100 may use logistic regression topredict whether heating occurs. As an example, if the system 100 obtainstemperature sensor data of cold temperature at t−1 and t and tanktemperature at t−1 and t show certain values, the system 100 may uselogistic regression processing to determine x % probability that thewater heater is currently heating. This may be used for example gaswater heaters without a circuitry that may report heater temperaturemessages, since the other water heaters reveal their heating status inthe data.

The system 100 may also control the operations of water heaters. Forexample, to optimize the water heaters, the system 100 evaluates heatingefficiency by temperature bracket and selects the highest efficiencytemperature brackets (e.g. measure adjusted heating delta by heatingbracket). The system 100 may use prediction models (e.g. Seasonal ARIMA)to predict heat usage over time and to predict when a user is out forvacation. The system 100 may use external data (e.g. electricity/gasprices) to heat the heater at the cheapest time. The system 100 maycompare cycle times for their efficiency (e.g. heating in short staccatovs. in long periods). The system 100 may receive from a user interface144 user input indicating dates and/or time durations when a user may beout of a household for an extended period of time, such as a vacation.The system 100 may use the dates and/or time periods of non-occupancy ofthe household, and may instruct, via the water heater sensor device 180,the water heater to turn off during the user provided time periods. Thesystem 100 may also use the water heater for grid load balancing,following an electric signal to take electricity from the power grid athigh loads and stopping water heaters at low grid load.

Moreover, the received sensor data from the sensor devices 160, 170, 180may be combined together by the system 100 to determine utility usageand/or identify a type of appliance or device being used. Severalhousehold appliances use water, heat and electricity, and the receivedsensor data from the sensors 160, 170, 180 may be used by the system 100to identify a particular appliance being used (such as a dish washer ora washing machine). For example, the use of a washing machine may bedetermined by the system 100. The system 100 may evaluate sensorinformation received from the water sensor device 160 indicating waterflow from the water heater sensor device 180 and temperature dataindicating a drop in tank temperature (and/or water flow of the coldwater refill of the water heater tank). The system 100 may also evaluatesensor information from the electricity sensor device 180 indicating anamperage draw. The system 100 may determine the likelihood orprobability that a washing machine is being used based on the combinedinformation of the water flow and electricity being used at the sametime or being used over a period of time.

Other household appliances may draw any combination of water and heat,water and electricity or heat and electricity. For example, the system100 may determine the occurrence of the heating of water of an electricwater heater by detecting an increase in temperature when the water isbeing heated. The system 100 may obtain from the water heater sensordevice 180 temperature data. At the same time that the water is beingheated the electricity sensor device 170, the system 100 may also obtainsensor data from the electricity sensor device 180 indicating that anelectric current with power being drawn.

Furthermore, many household appliances or devices are clearlydistinguishable by their specific utility usage characteristics from thesystem's 100 evaluation of combined sensor data obtained from two orthree sensors devices 160, 170, 180. For instance, an electric waterheater usually uses 16-22 Amps for 2-10 minutes. The system 100 mayutilize this characteristic of the electric water heater to aid indistinguishing one appliance or device from another. The system 100 maydetermine the occurrence of a peak of 40 Amps from the evaluation ofreceived data from the electricity sensor device 170. With just theelectricity sensor data of 40 Amps there may be multiple differentappliances or devices that could possibly be drawing this much power,and a particular appliance being used may not be determinable by thesystem 100. However, when the electricity sensor data and other sensordata from the water heater sensor device 180 is combined together, thesystem 100 may determine that a particular appliance likely being used.For example, if the water heater sensor device 180 indicates 10 minutesof heating at 20 Amps (and the electric water heater is known to use 20Amps when heating), and at the same time the electricity sensor device180 indicates 40 Amps of electricity usage, then there is an additional20 Amps that is being used by some other appliance. The system 100 wouldattribute the known 20 amps of the 40 amps of the electricity usage tothe electric water heater, but another 20 more amps needs to beaccounted for by the system 100.

The system 100 may determine that a refrigerator has a standard,long-term load pattern with small standard deviation of 10 Amps and thatthe refrigerator was running before the electricity sensor device 180measured the 40 Amps. The system 100 would then be able to account for30 Amps of the 40 Amps (e.g., 20 Amps for the electric water heater and10 Amps for the refrigerator, leaving 10 more Amps to be accounted for).However, the system 100 does not obtain sensor information about anywater flow from the water sensor device 160 or any outflow of waterheater sensor device 180 at the time of the 40 Amp spike. Knowing thatthese sensor devices 160, 180 are not showing utilization information,the system can rule out that application or device is not a washingmachine, a shower, faucet, pool or anything else that draws water orheat at the same time as it uses electricity.

However, they system 100 may identify a characteristic spike to 42 Ampsof 2 milli seconds just short before the drop to 40 Amps and thenidentify an unstable electricity usage pattern with high standarddeviation. The system 100 may determine that the signature of theinitial spike and following unstable electricity usage pattern usuallycorrelates with a coffee machine or tea boiler. The system 100 may havealso measured water flow worth about 0.5 liters 1 minute before themeasurement of the 40 Amps. In this scenario, the system 100 maydetermine at a 70% probability that a user was filling up the coffeemachine 1 minute before and is now using the coffee machine which likelyaccounts for the missing 10 amps. The system 100 would then determinethat a coffee machine was using the last 10 amps.

As the system 100 may only have a 70% probability or confidence that acoffee machine as being used, the system 100 may initiate a transmissionto a user device and the user interface 144 may display informationindicating that, a new device has been identified and there is 70%probability the device is a coffee maker, there is a 20% probabilitythat the device is a tea kettle, there is a 10% probability that thedevice is something else. Via the user interface 144, the user may inputfeedback indicating and/or confirming what the device, actually was. Thereceived input may then be provided as feedback into the machinelearning models to aid in better prediction or determination of anapplication or device. The system may identify unusual usage patternsfrom sensor data from the various sensor devices 160, 170, 180, andprompt a user via the user interface 144 to identify what the actualappliance, device or water outlet was. The system 100 may then storethis information, and when the system identifies the usage pattern tohave occurred again, the system 100 may assign or attribute the usagepattern to an appliance, device and/or water outlet that was previouslyspecified by the user.

The system 100 may determine which appliances, devices or householdsystems are being used based on the received sensor data from thevarious sensors 160, 170, 180. In one example, the water heater sensordevice 180 may obtain tank temperature, cold pipe temperature,optionally warm pipe temperature, heating pattern and time to predictthe appliance. The system 100 may determine that if cold water flowsback for a period of time (such as 10 minutes) and there is atemperature drop in the water heating tank (such as 5° Celsius), thesystem 100 may determine that a shower is likely being used. The system100 may determine if there is a temperature drop (such as of 10° C.)every morning at a particular time of the day (such as 5 am) overseveral days, then the system 100 may determine that a pump system thatpumps 10° C. into the piping at a pre-defined time is likely being used.

In another example, the system 100 may obtain electricity usage datausing the electricity sensor device 180 to determine that differenttypes of appliances are being used. The system 100 may use electricsignatures to determine that different appliances are being used. Forexample, the system 100 may determine an initial spike in electricityusage when a machine is turned on, the standard deviation of themachine, the length the machine is running, the amperage the machineconsumes, etc. The system 100 may evaluate the received sensor data andfeed the senor data into and evaluate them with any one of the 1D CNN,RNN, 2D CNN, 3D CNN and deep temporal clustering as previouslydescribed. In many instances, a determined usage signature is moreintricate then just a spike and following standard deviation as it ispicked up by the machine learning models.

Water Heater Optimization and Control

The machine learning processing module 110 may determine inefficientappliances by evaluating utility usage patterns and suggest savingspotential by recommendation usage behavioral changes (such as changingusage to another time of day). The machine learning processing module110 may determine more efficient heat ranges and cycle times, and thewater heater sensor device 180 may control and shut off the heating ofwater heaters during scheduled time periods or for detected time periodsof inactivity (such as determining that other appliances or electricityis not being used, and the system 100 may determine that a household maynot be occupied). Additionally, the machine learning models andprocessing performed by the system 100 may be used to calculate energyloss, for example, from inefficient heating cycles or standby heatingwhile there is no hot water consumption.

For example, with regard to FIG. 4A, the machine learning module 110 maycorrect for the temperature difference of the water body compared to thetemperature measured by temperature sensor 405. Machine learningprocessing module 110 may be used to calculate energy loss, e.g. frominefficient heating cycles or standby heating while there is no hotwater consumption. The system 100 may send an optimized heating patternto the water heater sensor device 180-A. This optimized heating patternmay be transferred to the gas valve controller 440 through theController Signal Connector 455.

For example, with regard to FIG. 4B, the system 100 may transmit anoptimized heating pattern to the water heater sensor device 180. Thisoptimized heating pattern may be implemented by the water heater sensordevice 180 by means of an internal relay controlling electric supply465. The Electric Heater Controller may then regulate the heatingelement 470 and hence control the water temperature in the tank 421.Machine learning processing module 110 may be also be used to correctfor the temperature difference of the water body compared to thetemperature measured by temperature sensors. For example, the externaltemperature sensors may read temperatures to be several degrees (e.g.10° C.) lower than an actual temperature in the tank. Also, drops andincreases in water temperature may not be as pronounced (captured assensitively) as in reality or only captured with a time lag. They system100 may use trained machine learning algorithms to pick up thetemperature difference of external based temp measurement and real watertemperature and to apply an adjustment algorithm to calculate out lags,wrong amplitudes of temperature increase/decrease or time lags.

Grid Load Balancing the Grid

The electricity information obtained by the system 100 may use used forgrid load balancing. The information gathered by electricity sensordevices 170 can be of great use to utility companies. The informationmay include analytics that helps with load forecasting, peak demandmanagement, DER integration, voltage anomaly detection, and Volt/VARoptimization. Generally, it helps to efficiently manage grid-edgeinfrastructure. Furthermore, the water heaters can be used for loadbalancing the grid as depicted in the FIG. 9

Example Computer System

FIG. 8 illustrates an example machine of a computer system within whicha set of instructions, for causing the machine to perform any one ormore of the methodologies discussed herein, may be executed. Inalternative implementations, the machine may be connected (e.g.,networked) to other machines in a LAN, an intranet, an extranet, and/orthe Internet. The machine may operate in the capacity of a server or aclient machine in client-server network environment, as a peer machinein a peer-to-peer (or distributed) network environment, or as a serveror a client machine in a cloud computing infrastructure or environment.

The machine may be a personal computer (PC), a tablet PC, a set-top box(STB), a Personal Digital Assistant (PDA), a cellular telephone, a webappliance, a server, a network router, a switch or bridge, or anymachine capable of executing a set of instructions (sequential orotherwise) that specify actions to be taken by that machine. Further,while a single machine is illustrated, the term “machine” shall also betaken to include any collection of machines that individually or jointlyexecute a set (or multiple sets) of instructions to perform any one ormore of the methodologies discussed herein.

The example computer system 800 includes a processing device 802, a mainmemory 804 (e.g., read-only memory (ROM), flash memory, dynamic randomaccess memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM(RDRAM), etc.), a static memory 806 (e.g., flash memory, static randomaccess memory (SRAM), etc.), and a data storage device 818, whichcommunicate with each other via a bus 830.

Processing device 802 represents one or more general-purpose processingdevices such as a microprocessor, a central processing unit, or thelike. More particularly, the processing device may be a complexinstruction set computing (CISC) microprocessor, reduced instruction setcomputing (RISC) microprocessor, very long instruction word (VLIW)microprocessor, or processor implementing other instruction sets, orprocessors implementing a combination of instruction sets. Processingdevice 802 may also be one or more special-purpose processing devicessuch as an application specific integrated circuit (ASIC), a fieldprogrammable gate array (FPGA), a digital signal processor (DSP),network processor, or the like. The processing device 802 is configuredto execute instructions 826 for performing the operations and stepsdiscussed herein.

The computer system 800 may further include a network interface device808 to communicate over the network 820. The computer system 800 alsomay include a video display unit 810 (e.g., a liquid crystal display(LCD) or a cathode ray tube (CRT)), an alphanumeric input device 812(e.g., a keyboard), a cursor control device 814 (e.g., a mouse), agraphics processing unit 822, a signal generation device 816 (e.g., aspeaker), graphics processing unit 822, video processing unit 828, andaudio processing unit 832.

The data storage device 818 may include a machine-readable storagemedium 824 (also known as a computer-readable medium) on which is storedone or more sets of instructions or software 826 embodying any one ormore of the methodologies or functions described herein. Theinstructions 826 may also reside, completely or at least partially,within the main memory 804 and/or within the processing device 802during execution thereof by the computer system 800, the main memory 804and the processing device 802 also constituting machine-readable storagemedia.

Additional User Interfaces

FIG. 10A illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 10A may begenerated by the system 100 and may be displayed on a display of amobile computing device. The system 100 may determine real-time utilityusage information (e.g., water, electricity and gas). For example, theinterface shows a real-time or live graph of water, electricity and gasusage and associated costs for the utility usage. The system 100 maydetermine the starting and stopping of different devices (e.g., masterbathroom shower, hair dyer, microwave, etc.).

FIG. 10B illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 10B may begenerated by the system 100 and may be displayed on a display of amobile computing device. The system 100 may determine water utilityusage information on a weekly or monthly basis. For example, theinterface shows a weekly graph of water usage, and associated costs forthe water usage. The system 100 may determine and display a cost heatmap for the time and days of the week and a corresponding value for aparticular time period.

FIG. 10C illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 10C may begenerated by the system 100 and may be displayed on a display of amobile computing device. The system 100 may determine electricityutility usage information on a weekly or monthly basis. For example, theinterface shows a weekly graph of electricity usage, and associatedcosts for the electricity usage. The system 100 may determine anddisplay a cost heat map for the time and days of the week and acorresponding value for a particular time period.

FIG. 10D illustrates an example user interface according to oneembodiment of the present disclosure. The example user interface of FIG.10C may be generated by the system 100 and may be displayed on a displayof a mobile computing device. The system 100 may determine gas utilityusage information on a weekly or monthly basis. For example, theinterface shows a weekly graph of gas usage, and associated costs forthe gas usage. The system 100 may determine and display a cost heat mapfor the time and days of the week and a corresponding value for aparticular time period.

FIG. 11A illustrates an example user interface according to oneembodiment of the present disclosure. The example user interface of FIG.11A may be generated by the system 100 and may be displayed on a displayof a mobile computing device. The system 100 may determine weeklyutility usage. The system 100 may generate a user interface depicting agraph of the type of utility being used (e.g., daily usage). The system100 may calculate a total and weekly average cost of utility beingconsumed (e.g., total cost this week of $12.76 and a weekly average costof $19.76). The system 100 may determine those devices that are alwaysand/or constantly being used and determine a cost of usage for thosecategories of devices. The system may determine a total weekly cost forrespective utility types (e.g., water, gas and/or electricity). For aparticular utility type, the system may determine the type of deviceusage type (e.g., master shower, guest bathroom, washing machine, etc.).The system 100 may determine and display a graph and a percentage of thetop usage of devices as compared to the total of the other used devices.

FIG. 11B illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 11B may begenerated by the system 100 and may be displayed on a display of amobile computing device. The system 100 may determine monthly utilityusage. The system 100 may generate a user interface depicting a graph ofthe type of utility being used (e.g., daily usage). The system 100 maycalculate a total monthly cost and an average monthly cost of utilitybeing consumed (e.g., total cost this month of $142.76 and a monthlyaverage cost of $169.76). The system 100 may determine those devicesthat are always and/or constantly being used and determine a cost ofusage for those categories of devices. The system may determine a totalmonthly cost for respective utility types (e.g., water, gas and/orelectricity). For a particular utility type, the system may determinethe type of device usage type (e.g., master shower, guest bathroom,washing machine, etc.). The system 100 may determine and display a graphand a percentage of the top usage of devices as compared to the total ofthe other used devices.

FIG. 12 illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 12 may begenerated by the system 100 and may be displayed on a display of amobile computing device. The user interface allows users of the systemto join a challenge to change their usage patterns for utilities. Forexample, the system may allow users to join the challenge and track theusage behaviors of the users of different types of utilities. A leaderboard may display the users and list the percentage utility used by aparticular user.

FIG. 13A illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 13A may begenerated by the system 100 and may be displayed on a display of acomputing device. FIG. 13A depicts a building overview for various unitsof a building. For example, the user interface may list respective unit(e.g., Apt 1A, Apt 1B, etc.) and their respective utility usage and costinformation (e.g., for water, electricity and gas). The system mayobtain data related to the respective units and then determine a totalusage information for the building. For example, the system maydetermine total water, electricity and gas usage. The system 100 mayalso determine waste and leak information. The user interface may alsodisplay the status of the sensors of the building (e.g., electricity: 20sensors ok, water: 14 sensors ok, water heater: 14 sensors ok). Thisuser interface allows a building manager to identify overall utilityusage and potential waste scenarios, and those individual units that areoverusing certain utilities. The system 100 may also determine commondevices (e.g., washing machines, showers, sinks, dishwashers, toilets,other, etc.) and display a graph showing the percentage usage of thecategory of the device as to other devices. The graph and devices may bedetermined separately for water, electricity and gas. Moreover, thesystem may determine common spaces of the building and the utility usagefor those common spaces (the common spaces being separate from theunits). Additionally, the system may determine and display a graph foremissions, prediction and targeting for the building. A grade or scoremay be calculated and be displayed by the system as to how the buildingis performing with respect to emotions.

FIG. 13B illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 13B may begenerated by the system 100 and may be displayed on a display of acomputing device. FIG. 13B depicts a building overview for various unitsof a building of water usage for the units of the building. For example,the user interface may list respective unit (e.g., Apt 1A, Apt 1B, etc.)and their respective utility usage and cost information (e.g., forwater, electricity and gas). In this example, the water usageinformation on a monthly basis is depicted. A user may select to reviewelectricity, water, water heater and emission usage. The usageinformation may be displayed on for a particular time period (e.g.,daily, weekly, monthly, yearly or a custom time period.). The userinterface may include a display portion depicting a heat map of a weeklypattern of utility usage by the units). The user interface may include adisplay portion depicting a total usage by appliance for the utilitytype (in the example user interface being water usage) for the aggregateunits. In other words, the system may evaluate received data formultiple sensor of the same type (such as a water sensor) for multiplelocations, units or buildings. For example, the total water usage byappliance (e.g., washing machines, showers, sinks, dishwashers, toilets,etc.) may be displayed via a graph with the respective percentage ofusage of the appliance being displayed.

FIG. 13C illustrates example user interfaces according to one embodimentof the present disclosure. The example user interface of FIG. 13C may begenerated by the system 100 and may be displayed on a display of acomputing device. FIG. 13C depicts a complete overview for variousbuildings of water usage for the buildings. In this view, the systemdetermines utility usage information for a number of buildings (e.g.,171 Henry Street, 165 Hollywood Bvd, 176 Mott Street, etc.). This viewallows a manager to evaluate usage information for multiple buildings.The user interface may display a listing of the different buildings withthe buildings respective address. The listing may include the totalnumber of sensors at the building (in this example, water sensors arecounted). The system may display an alert of a graphical icon indicatingan issue or problem with one of the sensors. For example, the one of thewater sensors at 176 Mott Street is displayed with an alert. The userinterface may include a display portion depicting a total usage byappliance for the utility type (in the example user interface beingwater usage) for the aggregate buildings. For example, the total waterusage by appliance (e.g., washing machines, showers, sinks, dishwashers,toilets, etc.) may be displayed via a graph with the respectivepercentage of usage of the appliance being displayed. The user interfacemay also provide functionality for comparing buildings in differentregions (e.g., comparing multiple states such as Idaho and Georgia). Theuser interface may receive a selection from a user for the regions to becompared.

FIG. 13D illustrates an example user interface according to oneembodiment of the present disclosure. The example user interface of FIG.13D may be generated by the system 100 and may be displayed on a displayof a computing device. FIG. 13D depicts a similar view of FIG. 13C. Inthis view, the system determines utility usage information for a numberof buildings (e.g., 171 Henry Street, 165 Hollywood Bvd, 176 MottStreet, etc.). A graph may be displayed of all utility information(e.g., water, electricity and gas) over a time period for all of thebuildings or properties and/or a selection of a subset of the buildingsor properties.

FIG. 13E illustrates an example user interface according to oneembodiment of the present disclosure. The example user interface of FIG.13E may be generated by the system 100 and may be displayed on a displayof a computing device. The system 100 may determine utility usagepatterns for a residence. The system 100 may generate a user interfacedepicting a graph of the type of utility being used (e.g., daily,weekly, monthly, annually)). The system 100 may calculate a total andaverage cost of utility being consumed for the time period. The system100 may also determine common devices (e.g., washing machines, showers,sinks, dishwashers, toilets, other, etc.) and display a graph showingthe percentage usage of the category of the device as to other devices.The graph and devices may be determined separately for water,electricity and gas. The user interface may include a display portiondepicting a heat map of a periodic pattern (e.g., daily, weekly,monthly, yearly) of utility usage (e.g., water, electricity, gas) forthe particular residence.

The system 100 may determine those devices that are always and/orconstantly being used and determine a cost of usage for those categoriesof devices. The system may determine a total weekly cost for respectiveutility types (e.g., water, gas and/or electricity). For a particularutility type, the system may determine the type of device usage type(e.g., master shower, guest bathroom, washing machine, etc.). The system100 may determine and display a graph and a percentage of the top usageof devices as compared to the total of the other used devices.

Some portions of the preceding detailed descriptions have been presentedin terms of algorithms and symbolic representations of operations ondata bits within a computer memory. These algorithmic descriptions andrepresentations are the ways used by those skilled in the dataprocessing arts to most effectively convey the substance of their workto others skilled in the art. An algorithm is here, and generally,conceived to be a self-consistent sequence of operations leading to adesired result. The operations are those requiring physicalmanipulations of physical quantities. Usually, though not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, combined, compared, and otherwise manipulated. It hasproven convenient at times, principally for reasons of common usage, torefer to these signals as bits, values, elements, symbols, characters,terms, numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the above discussion, itis appreciated that throughout the description, discussions utilizingterms such as “identifying” or “determining” or “executing” or“performing” or “collecting” or “creating” or “sending” or the like,refer to the action and processes of a computer system, or similarelectronic computing device, that manipulates and transforms datarepresented as physical (electronic) quantities within the computersystem's registers and memories into other data similarly represented asphysical quantities within the computer system memories or registers orother such information storage devices.

The present disclosure also relates to an apparatus for performing theoperations herein.

This apparatus may be specially constructed for the intended purposes,or it may comprise a general purpose computer selectively activated orreconfigured by a computer program stored in the computer. Such acomputer program may be stored in a computer readable storage medium,such as, but not limited to, any type of disk including floppy disks,optical disks, CD-ROMs, and magnetic-optical disks, read-only memories(ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic oroptical cards, or any type of media suitable for storing electronicinstructions, each coupled to a computer system bus.

Various general purpose systems may be used with programs in accordancewith the teachings herein, or it may prove convenient to construct amore specialized apparatus to perform the method. The structure for avariety of these systems will appear as set forth in the descriptionabove. In addition, the present disclosure is not described withreference to any particular programming language. It will be appreciatedthat a variety of programming languages may be used to implement theteachings of the disclosure as described herein.

The present disclosure may be provided as a computer program product, orsoftware, that may include a machine-readable medium having storedthereon instructions, which may be used to program a computer system (orother electronic devices) to perform a process according to the presentdisclosure. A machine-readable medium includes any mechanism for storinginformation in a form readable by a machine (e.g., a computer). Forexample, a machine-readable (e.g., computer-readable) medium includes amachine (e.g., a computer) readable storage medium such as a read onlymemory (“ROM”), random access memory (“RAM”), magnetic disk storagemedia, optical storage media, flash memory devices, etc.

In the foregoing disclosure, implementations of the disclosure have beendescribed with reference to specific example implementations thereof. Itwill be evident that various modifications may be made thereto withoutdeparting from the broader spirit and scope of implementations of thedisclosure as set forth in the following claims. The disclosure anddrawings are, accordingly, to be regarded in an illustrative senserather than a restrictive sense.

What is claimed is:
 1. A system comprising one or more processors, and anon-transitory computer-readable medium including one or more sequencesof instructions that, when executed by the one or more processors, causethe system to perform operations comprising: receiving water usageinformation from a first sensor device, wherein the first sensor deviceis configured to receive water flow rate information from ultrasonicsensors coupled to a water pipe; receiving electricity usage informationfrom a second sensor device, wherein the second sensor device isconfigured to receive amperage information from clamp meters attached toelectrical wiring, and is configured to receive voltage information froma connection to a circuit of an electrical panel; receiving water heaterusage information from a third sensor device, wherein the third sensordevice is configured to receive temperature information from temperaturesensors positioned about a water heater and/or from a controller of thewater heater; based on the received water usage information, thereceived electricity usage information and/or the received water heaterusage information, determining utility usage information for one or moreappliances, devices and/or water outlets being used; and displaying, viaa user interface, a graphical indication of the determined utility usageinformation for the one or more appliances, devices and/or water outletsbeing used.
 2. The system of claim 1, further comprising the operationsof: based on the received water usage information, the receivedelectricity usage information and/or the received water heater usageinformation, determining aggregate usage information for a time periodfor electricity usage, water usage and gas usage; and displaying, viathe user interface, the determined aggregate usage information.
 3. Thesystem of claim 1, further comprising the operations of: determiningtimes for operation of the water heater; and controlling operation of awater heater based on the determined times.
 4. The system of any one ofclaims 1, further comprising the operations of: presenting, via a userinterface, a graphical depiction of utility usage for electricity,water, and/or water heating.
 5. The system of any claim 1, furthercomprising the operations of: determining the occurrence of a water leakbased on the received water usage information; and presenting, via auser interface, an indication of a water leak, a possible location ofthe water leak and/or an estimation of overall pipe health.
 6. Thesystem of claim 1, further comprising the operations of: transmittingfrom the first, second and third sensor device to a hub device; andtransmitting from the hub device to a service to receive the water usageinformation, the electricity information and the water heater usageinformation.
 7. The system of claim 1, further comprising the operationsof: determining a likely appliance, device or water outlet being usedbased on evaluation of sensor data obtained from one or more of thefirst, second or third sensor device; receiving a user input via a userinterface confirming what type of appliance, device or water outlet hasbeen used; and based on the received user input retraining a machinelearning model to improve the determination of the likely appliance,device or water outlet being used.
 8. A computer-implemented methodcomprising the operations of: receiving water usage information from afirst sensor device, wherein the first sensor device is configured toreceive water flow rate information from ultrasonic sensors coupled to awater pipe; receiving electricity usage information from a second sensordevice, wherein the second sensor device is configured to receiveamperage information from clamp meters attached to electrical wiring,and is configured to receive voltage information from a connection to acircuit of an electrical panel; receiving water heater usage informationfrom a third sensor device, wherein the third sensor device isconfigured to receive temperature information from temperature sensorspositioned about a water heater and/or from a controller of the waterheater; based on the received water usage information, the receivedelectricity usage information and/or the received water heater usageinformation, determining utility usage information for one or moreappliances, devices and/or water outlets being used; and displaying, viaa user interface, a graphical indication of the determined utility usageinformation for the one or more appliances, devices and/or water outletsbeing used.
 9. The method of claim 8, further comprising the operationsof: based on the received water usage information, the receivedelectricity usage information and/or the received water heater usageinformation, determining aggregate usage information for a time periodfor electricity usage, water usage and gas usage; and displaying, viathe user interface, the determined aggregate usage information.
 10. Themethod of claim 8, further comprising the operations of: determiningtimes for operation of the water heater; and controlling operation of awater heater based on the determined times.
 11. The method of claim 8,further comprising the operations of: presenting, via a user interface,a graphical depiction of utility usage for electricity, water, and/orwater heating.
 12. The method of claim 8, further comprising theoperations of: determining the occurrence of a water leak based on thereceived water usage information; and presenting, via a user interface,an indication of a water leak.
 13. The method of claim 8, furthercomprising the operations of: transmitting from the first, second andthird sensor device to a hub device; and transmitting from the hubdevice to a service to receive the water usage information, theelectricity information and the water heater usage information.
 14. Themethod of claim 8, further comprising the operations of: determining alikely appliance, device or water outlet being used based on evaluationof sensor data obtained from one or more of the first, second or thirdsensor device; receiving a user input via a user interface confirmingwhat type of appliance, device or water outlet has been used; and basedon the received user input retraining a machine learning model toimprove the determination of the likely appliance, device or wateroutlet being used.
 15. A computer program product comprising anon-transitory computer-readable medium having a computer-readableprogram code embodied therein to be executed by one or more processors,the program code including instructions to perform the operation of:receiving water usage information from a first sensor device, whereinthe first sensor device is configured to receive water flow rateinformation from ultrasonic sensors coupled to a water pipe; receivingelectricity usage information from a second sensor device, wherein thesecond sensor device is configured to receive amperage information fromclamp meters attached to electrical wiring, and is configured to receivevoltage information from a connection to a circuit of an electricalpanel; receiving water heater usage information from a third sensordevice, wherein the third sensor device is configured to receivetemperature information from temperature sensors positioned about awater heater and/or from a controller of the water heater; based on thereceived water usage information, the received electricity usageinformation and/or the received water heater usage information,determining utility usage information for one or more appliances,devices and/or water outlets being used; and displaying, via a userinterface, a graphical indication of the determined utility usageinformation for the one or more appliances, devices and/or water outletsbeing used.
 16. The computer program product of claim 15, furthercomprising the operations of: based on the received water usageinformation, the received electricity usage information and/or thereceived water heater usage information, determining aggregate usageinformation for a time period for electricity usage, water usage and gasusage; and displaying, via the user interface, the determined aggregateusage information.
 17. The computer program product of claim 15, furthercomprising the operations of: determining times for operation of thewater heater; and controlling operation of a water heater based on thedetermined times.
 18. The computer program product of claim 15, furthercomprising the operations of: presenting, via a user interface, agraphical depiction of utility usage for electricity, water, and/orwater heating.
 19. The computer program product of claim 15, furthercomprising the operations of: determining the occurrence of a water leakbased on the received water usage information; and presenting, via auser interface, an indication of a water leak.
 20. The computer programproduct of claim 15, further comprising the operations of: transmittingfrom the first, second and third sensor device to a hub device; andtransmitting from the hub device to a service to receive the water usageinformation, the electricity information and the water heater usageinformation.
 21. The computer program product of claim 13, furthercomprising the operations of: determining a likely appliance, device orwater outlet being used based on evaluation of sensor data obtained fromone or more of the first, second or third sensor device; receiving auser input via a user interface confirming what type of appliance,device or water outlet has been used; and based on the received userinput retraining a machine learning model to improve the determinationof the likely appliance, device or water outlet being used.